1. Technical Field
The present application relates generally to an improved data processing system and method. More specifically, the present application is directed to a method, apparatus, and computer program product for configuring and scheduling discovery processes in a data processing system.
2. Description of Related Art
“Discovery”, in the field of system management, is the capability of automatically identifying hardware or software services in a network. For example, an administrator may wish to discover scanners, printers, Web servers, or particular software applications. Discovery systems either use central depositories where services are registered, or they provide a method for querying devices on the network.
Administrators may be in charge of network resources, license management, or software solutions distribution. Administrators typically request discovery scans; however, scans may also be initiated by software products. A scan can dominate resources for a significant amount of time. For example, a software scan may access hard disk drives and use processor resources on a number of data processing systems concurrently for a substantial period of time. Therefore, configuration and scheduling of discovery scans must be practical. That is, it is beneficial for administrators to schedule discovery processes so that the scans do not interfere with the production of workers or the computing devices themselves.
The discovery processes in current discovery engines are usually configured by parameters that delimit the set of resources to discover and define the time intervals used to scan the monitored resources again. A range of Internet protocol (IP) addresses may be used to delimit network discovery, while a drive specification may be used to delimit application discovery.
Different administrators may have different needs for discovery configuration parameters. If two or more administrators want to share the same discovery engine, they may agree on a common set of configuration parameters. If administrators cannot agree on a common set of configuration parameters, they may install two or more discovery engines and configure them separately.
Sharing the same configuration parameters among different administrators requires continued agreement. Any time one of the administrators needs to change parameters for a specific purpose, it may increase unnecessarily increase the burden on other scanned networks and systems that share the configuration parameters. For example, if an administrator needs to scan a small subnet each hour and another administrator needs to scan a large subnet each day, a common configuration would require scanning the combined subnets each hour. On the other hand, using multiple independent discovery engines in the same network increases the likelihood that overlapping scans of the same regions or resources may occur.